<?php
namespace Admin\Controller;

use Think\Controller;
use Think\Verify;

class LoginController extends Controller
{
    // 登录页面初始化
    public function index()
    {
        $this->display("login");
    }

    // 验证码生成接口
    public function code()
    {

        $config = array(
            'fontSize' => 20,    // 验证码字体大小
            'length' => 4,     // 验证码位数
            'useNoise' => true, // 关闭验证码杂点
            'codeSet' => '0123456789',
        );
        ob_clean();
        $Verify = new \Think\Verify($config);
        $Verify->entry();
    }

    // 登录操作验证接口
    public function login()
    {
        $code_request = I("code");
        $verify = new \Think\Verify();
        if ($verify->check($code_request, "")) {

            // 组装输入的参数
            $administrator = array("username" => I("username"), "password" => md5(I("password")));

            // 执行数据库验证
            $result = D("administrator")->login($administrator);

            if ($result) {
                //设置成功后跳转页面的地址，默认的返回页面是$_SERVER['HTTP_REFERER']
                $_SESSION['administrator'] = $result;
                $this->success('登录成功',"/index.php/Admin/Index/index");
            } else 
                //错误页面的默认跳转页面是返回前一页，通常不需要设置
                $this->error('账号或密码输入有误！');
            }
         else {
            $this->error('验证码输入错误。');
        }
    }

    // 退出接口
    public function logout()
    {
        $_SESSION['administrator'] = null;
        $this->success('退出成功', "/index.php/admin/Login/index");
    }
}